import Vue from 'vue'
import moment from 'moment'
import { formatNumber, formatPercent } from '../utils/tools'
import { substr, substrByte } from '@/utils/string'

/**
 * 日期格式化
 * @param    {String}  format     日期格式
 */
Vue.filter('formatDate', (value, format) => {
  return moment(value).format(format)
})

/**
 * 数字格式化
 * @param    {String}  format     数字
 */
Vue.filter('formatNumber', formatNumber)

/**
 * 数字格式化
 * @param    {String}  format     数字
 */
Vue.filter('formatPercent', formatPercent)

/**
 * 截取字符串
 * @param {String} str  需要截取的字符串;
 * @param {String} suffix 添加后缀(非必要),默认为"...";
 * @param {Number} length 需要截取的长度,字符串长度不足返回本身;
 */
Vue.filter('substr', substr)

/**
 * 按字节长度截取字符串,并添加后缀.
 * @param length 需要截取的长度,字符串长度不足返回本身;
 * @param suffix 添加后缀(非必要),默认为"...";
 */
Vue.filter('substrByte', substrByte)
